Communication devices utilizing wireless communication protocols are ubiquitous. These devices may utilize a cellular voice network (e.g., GSM or CDMA), a cellular packet data network (e.g., LTE) or a non-cellular packet data network such as 802.11 WiFi over the Internet to place and receive telephone calls to other communication devices. A communication device may include another mobile communication device on the same or another cellular network, a Voice-over Internet Protocol (VoIP) communication device, a hybrid VoIP/Cellular communication device and/or a plain old telephone service (POTS) communication device. Moreover, a variety of computer devices may utilize communication interfaces and protocols for exchanging audio, video, and text data over an Internet Protocol (IP) network such as, for instance, the Internet. Each of these telephony or computer communication devices may use a different access network but all are interfaced at some point to allow for communication among the different networks.
Communication may be further categorized as synchronous or asynchronous which, for purposes of this disclosure may refer to real-time versus near real-time and/or non real-time. For instance, synchronous communication can refer to an exchange between communication endpoints in which each endpoint may relay and render data in a real-time fashion. Asynchronous communication can refer to an exchange between communication endpoints in which each endpoint may relay and render data in a near real-time and/or non real-time fashion. Synchronous communication, due to its real-time nature, has a limited time domain in which to cope with various network factors including, for example, jitter compensation, out of sequence packet arrival, missing, late, or lost packets, etc. Additionally, synchronous communication generally may require constant and consistent attention and interaction from the parties at both communication endpoints in order to be productive, thereby maximizing each party's communication benefit and minimizing wasted time. Asynchronous communication is not bound by the same limited time domain as synchronous communication when coping with network factors, nor is it bound by the constant and consistent attention and interaction from the parties at both communication endpoints in order to be productive. Asynchronous communication may be capable of operating in circumstances where network conditions are unavailable, partially unavailable, congested, latent or otherwise non-conducive to synchronous communication through store and forward capabilities and alternate transport/protocol mechanisms preferring, for example, reliable delivery ordering and receipt acknowledgement of data.
Typically, synchronous and asynchronous devices do not communicate with one another in what one would characterize as a unified communication session. The real-time versus non or near real-time nature of the two modes does not necessarily make for a good communication experience mainly because of the delay associated with the asynchronous mode of communication. However, recent advances in networks and communication protocols have made it possible for asynchronous communications to be very close to real-time to the point of being usable with a synchronous device. This is especially true when such a device either is not capable of synchronous communication or does not currently have access to a network that supports, or can currently maintain, a synchronous communication. Moreover, there may be times when a device may have access to synchronous communications but wishes to remain in an asynchronous mode due to cost or environmental considerations. Environmental considerations may include a desire to remain in asynchronous mode because of high levels of background noise or an environment that is very distracting making it easier to maintain an asynchronous connection versus a synchronous connection.
Described herein are methods, systems, and techniques for mediating a communication session between an asynchronous communication device and a synchronous communication device.